}
else
{
- scanner = gtk_css_scanner_new (css_provider,
- parent,
- parent ? parent->section : NULL,
- file,
- "");
+ if (parent == NULL)
+ {
+ scanner = gtk_css_scanner_new (css_provider,
+ parent,
+ parent ? parent->section : NULL,
+ file,
+ "");
- gtk_css_scanner_push_section (scanner, GTK_CSS_SECTION_DOCUMENT);
+ gtk_css_scanner_push_section (scanner, GTK_CSS_SECTION_DOCUMENT);
+ }
+ else
+ scanner = parent;
gtk_css_provider_error (css_provider,
scanner,
"Failed to import: %s",
load_error->message);
- gtk_css_scanner_pop_section (scanner, GTK_CSS_SECTION_DOCUMENT);
+ if (parent == NULL)
+ {
+ gtk_css_scanner_pop_section (scanner, GTK_CSS_SECTION_DOCUMENT);
- gtk_css_scanner_destroy (scanner);
+ gtk_css_scanner_destroy (scanner);
+ }
}
}